[INFO] cloning repository https://github.com/dssysolyatin/telegram2photoprism
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dssysolyatin/telegram2photoprism" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdssysolyatin%2Ftelegram2photoprism", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdssysolyatin%2Ftelegram2photoprism'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] bb0e462b8f54f3a17a8c2c07d5541cd278137a58
[INFO] fixing dssysolyatin/telegram2photoprism against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdssysolyatin%2Ftelegram2photoprism" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/dssysolyatin/telegram2photoprism
[INFO] finished tweaking git repo https://github.com/dssysolyatin/telegram2photoprism
[INFO] tweaked toml for git repo https://github.com/dssysolyatin/telegram2photoprism written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/dssysolyatin/telegram2photoprism on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/dssysolyatin/telegram2photoprism already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 4cfd10eea251055c29e650d81daf4ba13648dd99066fc8509eb651c2b214539c
[INFO] running `Command { std: "docker" "start" "4cfd10eea251055c29e650d81daf4ba13648dd99066fc8509eb651c2b214539c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4cfd10eea251055c29e650d81daf4ba13648dd99066fc8509eb651c2b214539c" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4cfd10eea251055c29e650d81daf4ba13648dd99066fc8509eb651c2b214539c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4cfd10eea251055c29e650d81daf4ba13648dd99066fc8509eb651c2b214539c" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling proc-macro2 v1.0.78
[INFO] [stderr]    Compiling serde v1.0.196
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking bitflags v2.4.2
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling memchr v2.7.1
[INFO] [stderr]    Compiling serde_json v1.0.113
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]     Checking indexmap v2.2.2
[INFO] [stderr]     Checking mio v0.8.10
[INFO] [stderr]     Checking socket2 v0.5.5
[INFO] [stderr]     Checking signal-hook-registry v1.4.1
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]     Checking aho-corasick v1.1.2
[INFO] [stderr]    Compiling openssl v0.10.63
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]    Compiling rustix v0.38.31
[INFO] [stderr]    Compiling mime_guess v2.0.4
[INFO] [stderr]    Compiling bstr v1.9.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling erasable v1.2.1
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]     Checking linux-raw-sys v0.4.13
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling winnow v0.5.37
[INFO] [stderr]    Compiling ryu v1.0.16
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling yaml-rust v0.4.5
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling openssl-src v300.2.2+3.2.1
[INFO] [stderr]     Checking regex-automata v0.4.5
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling arc-swap v1.6.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling openssl-sys v0.9.99
[INFO] [stderr]     Checking uuid v1.7.0
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]     Checking unicode-ident v1.0.12
[INFO] [stderr]    Compiling normpath v1.1.1
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]     Checking anstyle v1.0.5
[INFO] [stderr]     Checking anstream v0.6.11
[INFO] [stderr]    Compiling itertools v0.9.0
[INFO] [stderr]     Checking rc-box v1.2.0
[INFO] [stderr]     Checking parking_lot_core v0.9.9
[INFO] [stderr]     Checking raw-cpuid v11.0.1
[INFO] [stderr]     Checking clap_lex v0.6.0
[INFO] [stderr]     Checking never v0.1.0
[INFO] [stderr]    Compiling moka v0.12.5
[INFO] [stderr]     Checking event-listener v2.5.3
[INFO] [stderr]     Checking chrono v0.4.33
[INFO] [stderr]     Checking vecrem v0.1.0
[INFO] [stderr]    Compiling anyhow v1.0.79
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]     Checking take_mut v0.2.2
[INFO] [stderr]     Checking takecell v0.1.1
[INFO] [stderr]     Checking async-lock v2.8.0
[INFO] [stderr]     Checking clap_builder v4.4.18
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.11
[INFO] [stderr]     Checking tagptr v0.2.0
[INFO] [stderr]     Checking fastrand v2.0.1
[INFO] [stderr]     Checking retry v2.0.0
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]     Checking globset v0.4.14
[INFO] [stderr]     Checking is-terminal v0.4.10
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking task-local-extensions v0.1.4
[INFO] [stderr]     Checking tempfile v3.9.0
[INFO] [stderr]     Checking ignore v0.4.22
[INFO] [stderr]     Checking env_logger v0.10.2
[INFO] [stderr]     Checking quanta v0.12.2
[INFO] [stderr]    Compiling serde_spanned v0.6.5
[INFO] [stderr]    Compiling toml_datetime v0.6.5
[INFO] [stderr]    Compiling serde_yaml v0.8.26
[INFO] [stderr]    Compiling triomphe v0.1.11
[INFO] [stderr]     Checking pretty_env_logger v0.5.0
[INFO] [stderr]     Checking globwalk v0.8.1
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling darling_core v0.13.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling serde_derive v1.0.196
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.56
[INFO] [stderr]    Compiling pin-project-internal v1.1.4
[INFO] [stderr]    Compiling async-trait v0.1.77
[INFO] [stderr]    Compiling clap_derive v4.4.7
[INFO] [stderr]     Checking tokio v1.36.0
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling aquamarine v0.1.12
[INFO] [stderr]    Compiling teloxide-macros v0.7.1
[INFO] [stderr]     Checking pin-project v1.1.4
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]    Compiling rust-i18n v3.0.1
[INFO] [stderr]     Checking thiserror v1.0.56
[INFO] [stderr]    Compiling toml v0.7.8
[INFO] [stderr]     Checking clap v4.4.18
[INFO] [stderr]    Compiling rust-i18n-support v3.0.1
[INFO] [stderr]    Compiling rust-i18n-macro v3.0.0
[INFO] [stderr]    Compiling darling_macro v0.13.4
[INFO] [stderr]    Compiling darling v0.13.4
[INFO] [stderr]    Compiling serde_with_macros v1.5.2
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking futures v0.3.30
[INFO] [stderr]     Checking dptree v0.3.0
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]     Checking tokio-stream v0.1.14
[INFO] [stderr]     Checking h2 v0.3.24
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]     Checking serde_with v1.14.0
[INFO] [stderr]     Checking bollard-stubs v1.42.0-rc.3
[INFO] [stderr]     Checking hyper v0.14.28
[INFO] [stderr]     Checking testcontainers v0.15.0
[INFO] [stderr]     Checking testcontainers-modules v0.3.2
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.24
[INFO] [stderr]     Checking teloxide-core v0.9.1
[INFO] [stderr]     Checking teloxide v0.12.2
[INFO] [stderr]     Checking telegram2photoprism v0.0.5 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/photo_service.rs:155:33
[INFO] [stdout]      |
[INFO] [stdout]  155 |         while let Some(bytes) = stream.try_next().await? {
[INFO] [stdout]      |                        -----    ^^^^^^^^^^^^^^^^^^-----^
[INFO] [stdout]      |                        |        |                 |
[INFO] [stdout]      |                        |        |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        |        |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                        |        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                        |        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        |        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                        |        up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        `bytes` calls a custom destructor
[INFO] [stdout]      |                        `bytes` will be dropped later as of Edition 2024
[INFO] [stdout]  156 |             hasher.update(&bytes);
[INFO] [stdout]  157 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes_mut.rs:1036:1
[INFO] [stdout]      |
[INFO] [stdout] 1036 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes_mut.rs:1036:1
[INFO] [stdout]      |
[INFO] [stdout] 1036 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes_mut.rs:1036:1
[INFO] [stdout]      |
[INFO] [stdout] 1036 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bytes` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes_mut.rs:1036:1
[INFO] [stdout]      |
[INFO] [stdout] 1036 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/photo_service.rs:249:53
[INFO] [stdout]     |
[INFO] [stdout] 224 |         let upload_file_resp = self
[INFO] [stdout]     |             ----------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `upload_file_resp` calls a custom destructor
[INFO] [stdout]     |             `upload_file_resp` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 236 |         let process_upload_file_resp = self
[INFO] [stdout]     |             ------------------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `process_upload_file_resp` calls a custom destructor
[INFO] [stdout]     |             `process_upload_file_resp` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 249 |         match self.search_photo_by_hash(&file_hash).await? {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |                                                     |
[INFO] [stdout]     |                                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 253 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `upload_file_resp` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.36.0/src/runtime/time/entry.rs:642:1
[INFO] [stdout]     |
[INFO] [stdout] 642 | impl Drop for TimerEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `upload_file_resp` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `upload_file_resp` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes.rs:522:1
[INFO] [stdout]     |
[INFO] [stdout] 522 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `process_upload_file_resp` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.36.0/src/runtime/time/entry.rs:642:1
[INFO] [stdout]     |
[INFO] [stdout] 642 | impl Drop for TimerEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `process_upload_file_resp` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `process_upload_file_resp` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes.rs:522:1
[INFO] [stdout]     |
[INFO] [stdout] 522 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating tests/photoprism_api_test.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/photo_service.rs:155:33
[INFO] [stdout]      |
[INFO] [stdout]  155 |         while let Some(bytes) = stream.try_next().await? {
[INFO] [stdout]      |                        -----    ^^^^^^^^^^^^^^^^^^-----^
[INFO] [stdout]      |                        |        |                 |
[INFO] [stdout]      |                        |        |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        |        |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                        |        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                        |        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        |        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                        |        up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        `bytes` calls a custom destructor
[INFO] [stdout]      |                        `bytes` will be dropped later as of Edition 2024
[INFO] [stdout]  156 |             hasher.update(&bytes);
[INFO] [stdout]  157 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes_mut.rs:1036:1
[INFO] [stdout]      |
[INFO] [stdout] 1036 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes_mut.rs:1036:1
[INFO] [stdout]      |
[INFO] [stdout] 1036 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes_mut.rs:1036:1
[INFO] [stdout]      |
[INFO] [stdout] 1036 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bytes` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes_mut.rs:1036:1
[INFO] [stdout]      |
[INFO] [stdout] 1036 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/photo_service.rs:249:53
[INFO] [stdout]     |
[INFO] [stdout] 224 |         let upload_file_resp = self
[INFO] [stdout]     |             ----------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `upload_file_resp` calls a custom destructor
[INFO] [stdout]     |             `upload_file_resp` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 236 |         let process_upload_file_resp = self
[INFO] [stdout]     |             ------------------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `process_upload_file_resp` calls a custom destructor
[INFO] [stdout]     |             `process_upload_file_resp` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 249 |         match self.search_photo_by_hash(&file_hash).await? {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |                                                     |
[INFO] [stdout]     |                                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 253 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `upload_file_resp` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.36.0/src/runtime/time/entry.rs:642:1
[INFO] [stdout]     |
[INFO] [stdout] 642 | impl Drop for TimerEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `upload_file_resp` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `upload_file_resp` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes.rs:522:1
[INFO] [stdout]     |
[INFO] [stdout] 522 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `process_upload_file_resp` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.36.0/src/runtime/time/entry.rs:642:1
[INFO] [stdout]     |
[INFO] [stdout] 642 | impl Drop for TimerEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `process_upload_file_resp` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `process_upload_file_resp` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes.rs:522:1
[INFO] [stdout]     |
[INFO] [stdout] 522 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating src/main.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> tests/photoprism_api_test.rs:62:17
[INFO] [stdout]     |
[INFO] [stdout]  61 |     let fixture = Fixture::new();
[INFO] [stdout]     |         -------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `fixture` calls a custom destructor
[INFO] [stdout]     |         `fixture` will be dropped later as of Edition 2024
[INFO] [stdout]  62 |     f(&fixture).await
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                 up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  63 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `fixture` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/testcontainers-0.15.0/src/core/container.rs:250:1
[INFO] [stdout]     |
[INFO] [stdout] 250 | / impl<'d, I> Drop for Container<'d, I>
[INFO] [stdout] 251 | | where
[INFO] [stdout] 252 | |     I: Image,
[INFO] [stdout]     | |_____________^
[INFO] [stdout] note: `fixture` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/testcontainers-0.15.0/src/clients/cli.rs:448:1
[INFO] [stdout]     |
[INFO] [stdout] 448 | impl Drop for Client {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating tests/photoprism_container.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 53s
[INFO] [stderr] crater-edition-check: telegram2photoprism v0.0.5 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking telegram2photoprism v0.0.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `arg`
[INFO] [stdout]   --> src/main.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | use clap::{arg, Parser};
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arg`
[INFO] [stdout]   --> src/main.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | use clap::{arg, Parser};
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 54s
[INFO] [stderr] crater-edition-check all packages now at latest edition
[INFO] [stderr] crater-edition-check: all finished
[INFO] running `Command { std: "docker" "inspect" "4cfd10eea251055c29e650d81daf4ba13648dd99066fc8509eb651c2b214539c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4cfd10eea251055c29e650d81daf4ba13648dd99066fc8509eb651c2b214539c", kill_on_drop: false }`
[INFO] [stdout] 4cfd10eea251055c29e650d81daf4ba13648dd99066fc8509eb651c2b214539c
